home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.image.ImageObserver;
-
- public class Sprite extends LinkList implements ImageObserver {
- public static final int DEFAULT = 0;
- public static final int ON_PAINT = 0;
- public static final int OFF_PAINT = 1;
- protected JglFrame resource;
- protected int Attr;
- protected Image[] iChar;
-
- public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
- return true;
- }
-
- public Sprite(JglFrame var1, int var2) {
- super(new SpriteIndex());
- this.resource = var1;
- this.Attr = var2;
- this.iChar = new Image[65536];
- }
-
- public void readChar(int var1, String var2) {
- this.iChar[var1] = this.resource.getImage(var2);
- }
-
- public void readChar(int var1, String var2, boolean var3) {
- this.iChar[var1] = this.resource.getImage(var2, var3);
- }
-
- public void add(SpriteIndex var1) {
- super.add(var1);
- }
-
- public void delete(SpriteIndex var1) {
- super.delete(var1);
- }
-
- public void deleteAll() {
- for(SpriteIndex var1 = (SpriteIndex)super.Top.getNext(); var1 != null; var1 = (SpriteIndex)((LinkListIndex)var1).getNext()) {
- this.delete(var1);
- }
-
- }
-
- public void paint(Graphics var1) {
- SpriteIndex var2 = (SpriteIndex)super.Top.getNext();
- if ((this.Attr & 1) == 0) {
- while(var2 != null) {
- this.drawSprite(var1, var2);
- var2 = (SpriteIndex)((LinkListIndex)var2).getNext();
- }
-
- }
- }
-
- private void drawSprite(Graphics var1, SpriteIndex var2) {
- int var8 = var2.getImage();
- if (var8 < 65536) {
- if (var8 >= 0) {
- Image var5 = this.iChar[var8];
- if (var5 != null) {
- int var6 = var5.getWidth(this);
- int var7 = var5.getHeight(this);
- int var3;
- int var4;
- switch (var2.getAttr()) {
- case 5:
- var3 = var2.getPosition().getX() >>> 16;
- var4 = var2.getPosition().getY() >>> 16;
- break;
- case 6:
- var3 = (var2.getPosition().getX() >>> 16) - var6 / 2;
- var4 = var2.getPosition().getY() >>> 16;
- break;
- case 7:
- var3 = (var2.getPosition().getX() >>> 16) - var6;
- var4 = var2.getPosition().getY() >>> 16;
- break;
- case 8:
- case 12:
- default:
- System.out.println("drawSprite: Attr Err !!");
- return;
- case 9:
- var3 = var2.getPosition().getX() >>> 16;
- var4 = (var2.getPosition().getY() >>> 16) - var7 / 2;
- break;
- case 10:
- var3 = (var2.getPosition().getX() >>> 16) - var6 / 2;
- var4 = (var2.getPosition().getY() >>> 16) - var7 / 2;
- break;
- case 11:
- var3 = (var2.getPosition().getX() >>> 16) - var6;
- var4 = (var2.getPosition().getY() >>> 16) - var7 / 2;
- break;
- case 13:
- var3 = var2.getPosition().getX() >>> 16;
- var4 = (var2.getPosition().getY() >>> 16) - var7;
- break;
- case 14:
- var3 = (var2.getPosition().getX() >>> 16) - var6 / 2;
- var4 = (var2.getPosition().getY() >>> 16) - var7;
- break;
- case 15:
- var3 = (var2.getPosition().getX() >>> 16) - var6;
- var4 = (var2.getPosition().getY() >>> 16) - var7;
- }
-
- var1.drawImage(var5, var3, var4, this.resource);
- }
- }
- }
- }
- }
-